.if ROGUE_DEBUG == TRUE
Debug_MessageEnd:
    waitmessage
    waitbuttonpress
    releaseall
    end

Debug_ShowFieldMessageStringVar4::
    special ShowFieldMessageStringVar4
    goto Debug_MessageEnd

Debug_CheatStart::
    setflag FLAG_SYS_POKEMON_GET
    setflag FLAG_RESCUED_BIRCH
    setflag FLAG_HIDE_ROUTE_101_BIRCH_ZIGZAGOON_BATTLE
    setflag FLAG_ADVENTURE_STARTED
    clearflag FLAG_HIDE_LITTLEROOT_TOWN_BIRCHS_LAB_BIRCH
    setflag FLAG_HIDE_ROUTE_101_BIRCH_STARTERS_BAG
    givemon SPECIES_TREECKO, 20, ITEM_NONE
    givemon SPECIES_TORCHIC, 20, ITEM_NONE
    givemon SPECIES_MUDKIP, 20, ITEM_NONE
    setflag FLAG_SYS_POKEDEX_GET
    special SetUnlockedPokedexFlags
    setflag FLAG_RECEIVED_POKEDEX_FROM_BIRCH
    setflag FLAG_SYS_NATIONAL_DEX
    special EnableNationalPokedex
    setflag FLAG_RECEIVED_RUNNING_SHOES
    setflag FLAG_SYS_B_DASH
    setvar VAR_LITTLEROOT_INTRO_STATE, 7 @ 7: Told to go meet rival
    setvar VAR_LITTLEROOT_HOUSES_STATE_BRENDAN, 2 @ 2: Met Rival's Mom (and is corresponding gender)
    setvar VAR_LITTLEROOT_RIVAL_STATE, 4 @ 4: Received Pokedex
    setflag FLAG_RECEIVED_BIKE
    additem ITEM_ACRO_BIKE
    setvar VAR_BRINEY_HOUSE_STATE, 1
    setflag FLAG_HIDE_ROUTE_116_MR_BRINEY
    setflag FLAG_BADGE01_GET
    setflag FLAG_BADGE02_GET
    setflag FLAG_BADGE03_GET
    setflag FLAG_BADGE04_GET
    setflag FLAG_BADGE05_GET
    setflag FLAG_BADGE06_GET
    setflag FLAG_BADGE07_GET
    setflag FLAG_BADGE08_GET
    setflag FLAG_VISITED_LITTLEROOT_TOWN
    setflag FLAG_VISITED_OLDALE_TOWN
    setflag FLAG_VISITED_DEWFORD_TOWN
    setflag FLAG_VISITED_LAVARIDGE_TOWN
    setflag FLAG_VISITED_FALLARBOR_TOWN
    setflag FLAG_VISITED_VERDANTURF_TOWN
    setflag FLAG_VISITED_PACIFIDLOG_TOWN
    setflag FLAG_VISITED_PETALBURG_CITY
    setflag FLAG_VISITED_SLATEPORT_CITY
    setflag FLAG_VISITED_MAUVILLE_CITY
    setflag FLAG_VISITED_RUSTBORO_CITY
    setflag FLAG_VISITED_FORTREE_CITY
    setflag FLAG_VISITED_LILYCOVE_CITY
    setflag FLAG_VISITED_MOSSDEEP_CITY
    setflag FLAG_VISITED_SOOTOPOLIS_CITY
    setflag FLAG_VISITED_EVER_GRANDE_CITY
    setflag FLAG_LANDMARK_POKEMON_LEAGUE
    setflag FLAG_LANDMARK_BATTLE_FRONTIER
    clearflag FLAG_HIDE_BRINEYS_HOUSE_MR_BRINEY
    clearflag FLAG_HIDE_BRINEYS_HOUSE_PEEKO
    release
    end

Debug_FlagsNotSetOverworldConfigMessage::
    message Debug_FlagsNotSetOverworldConfigMessage_Text
    goto Debug_MessageEnd

Debug_FlagsNotSetOverworldConfigMessage_Text:
    .string "Feature unavailable!\n"
    .string "Please define a usable flag in:\l"
    .string "'include/config/overworld.h'!$"

Debug_FlagsNotSetBattleConfigMessage::
    message Debug_FlagsNotSetBattleConfigMessage_Text
    goto Debug_MessageEnd

Debug_FlagsNotSetBattleConfigMessage_Text:
    .string "Feature unavailable!\n"
    .string "Please define a usable flag in:\l"
    .string "'include/config/battle.h'!$"

Debug_BoxFilledMessage::
    message Debug_BoxFilledMessage_Text
    goto Debug_MessageEnd

Debug_BoxFilledMessage_Text:
    .string "Storage boxes filled!$"

Debug_EventScript_Script_1::
    special Special_ViewDifficultyConfigMenu
    waitstate
    end

Debug_EventScript_Script_2::
    end

Debug_EventScript_Script_3::
    end

Debug_EventScript_Script_4::
    end

Debug_EventScript_Script_5::
    end

Debug_EventScript_Script_6::
    end

Debug_EventScript_Script_7::
    end

Debug_EventScript_Script_8::
    end

Debug_CheckSaveBlock::
    callnative CheckSaveBlock1Size
    msgbox Debug_SaveBlock1Size, MSGBOX_DEFAULT
    callnative CheckSaveBlock2Size
    msgbox Debug_SaveBlock2Size, MSGBOX_DEFAULT
    callnative CheckPokemonStorageSize
    msgbox Debug_PokemonStorageSize, MSGBOX_DEFAULT
    callnative CheckRogueSaveSize
    msgbox Debug_RogueSaveSize, MSGBOX_DEFAULT
    release
    end

Debug_SaveBlock1Size::
    .string "SaveBlock1 size: {STR_VAR_1}b/{STR_VAR_2}b.\n"
    .string "Free space: {STR_VAR_3}b.$"

Debug_SaveBlock2Size::
    .string "SaveBlock2 size: {STR_VAR_1}b/{STR_VAR_2}b.\n"
    .string "Free space: {STR_VAR_3}b.$"

Debug_PokemonStorageSize::
    .string "{PKMN}Storage size: {STR_VAR_1}b/{STR_VAR_2}b.\n"
    .string "Free space: {STR_VAR_3}b.$"

Debug_RogueSaveSize::
    .string "RogueSaveBlock size: {STR_VAR_1}b/{STR_VAR_2}b.\n"
    .string "Free space: {STR_VAR_3}b.$"

Debug_CheckROMSpace::
    callnative CheckROMSize
    msgbox Debug_ROMSize, MSGBOX_DEFAULT
    release
    end

Debug_ROMSize::
    .string "ROM size: {STR_VAR_1}MB/32MB.\n"
    .string "Free space: {STR_VAR_2}MB.$"

Debug_HatchAnEgg::
    lockall
    getpartysize
    goto_if_eq VAR_RESULT, 0, Debug_HatchAnEgg_NoPokemon
    special ChoosePartyMon
    waitstate
    goto_if_ge VAR_0x8004, PARTY_SIZE, Debug_HatchAnEgg_End
    specialvar VAR_RESULT, ScriptGetPartyMonSpecies
    goto_if_ne VAR_RESULT, SPECIES_EGG, DebugScript_HatchAnEgg_CantForceHatch
    special EggHatch
    waitstate
Debug_HatchAnEgg_End::
    releaseall
    end

Debug_HatchAnEgg_NoPokemon::
    msgbox DebugScript_HatchAnEgg_Text_EmptyParty, MSGBOX_DEFAULT
    releaseall
    end

DebugScript_HatchAnEgg_CantForceHatch::
    msgbox DebugScript_HatchAnEgg_Text_NotAnEgg, MSGBOX_DEFAULT
    releaseall
    end

DebugScript_HatchAnEgg_Text_EmptyParty::
    .string "You have no Pokémon nor Eggs.$"

DebugScript_HatchAnEgg_Text_NotAnEgg::
    .string "That's not a Pokémon Egg.$"

DebugScript_ZeroDaycareMons::
    msgbox DebugText_DaycareNoPokemon, MSGBOX_DEFAULT
    releaseall
    end

DebugScript_OneDaycareMons::
    msgbox DebugText_DaycareOnePokemon, MSGBOX_DEFAULT
    releaseall
    end

DebugScript_DaycareMonsNotCompatible::
    msgbox DebugText_DaycarePokemonNotCompatible, MSGBOX_DEFAULT
    releaseall
    end

DebugText_DaycareNoPokemon:
    .string "You have no Pokémon at Daycare.$"

DebugText_DaycareOnePokemon:
    .string "You have only one Pokémon at Daycare.$"

DebugText_DaycarePokemonNotCompatible:
    .string "Your Pokémon at Daycare can't\nhave babies together!$"

Debug_ShowExpansionVersion::
    callnative BufferExpansionVersion
    msgbox Debug_ExpansionVersion, MSGBOX_DEFAULT
    release
    end

Debug_ExpansionVersion:
    .string "pokeemerald-expansion {STR_VAR_1}$"

.endif

Debug_FlagsAndVarNotSetBattleConfigMessage::
    lockall
    message Debug_FlagsAndVarNotSetBattleConfigMessage_Text
    waitmessage
    waitbuttonpress
    releaseall
    end

Debug_FlagsAndVarNotSetBattleConfigMessage_Text:
    .string "Feature unavailable! Please define a\n"
    .string "usable flag and a usable var in:\l"
    .string "'include/config/battle.h'!$"

